package ${appConfig.groupId}.model;

import java.io.Serializable;

public class ${tableConfig.domainObjectName} implements Serializable {
	private static final long serialVersionUID = 1L;

	<#list columnConfigs as columnConfig>
    /**
     * @Fields ${columnConfig.javaPropertyName} ${columnConfig.remarks}
     */
    private ${columnConfig.javaShortType} ${columnConfig.javaPropertyName};

	</#list>

	<#list columnConfigs as columnConfig>
	public ${columnConfig.javaShortType} get${columnConfig.javaPropertyName ? cap_first}() {
        return ${columnConfig.javaPropertyName};
    }

    public void set${columnConfig.javaPropertyName ? cap_first}(${columnConfig.javaShortType} ${columnConfig.javaPropertyName}) {
        this.${columnConfig.javaPropertyName} = ${columnConfig.javaPropertyName};
    }

    </#list>

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        <#list columnConfigs as columnConfig>
        sb.append(", ${columnConfig.javaPropertyName}=").append(${columnConfig.javaPropertyName});
        </#list>
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}
